原创 stl_list的back()函數疑問與解析

stl_list.h的back( )函數是這樣的: reference  back( ) { return  *(--end()); } iterator end() { return node; } 其中reference定義爲: t

原创 模板類的靜態成員變量

我自己寫了一個簡易的空間適配器代碼如下,後來發現,不同類型的類模板共享的靜態成員變量不是同一塊。 這可以通過查看不同類型類模板靜態成員的地址,地址相同,表示共享的是同一塊,不同則表示不是同一塊。 cout<<"address="<<&Se

原创 list中節點如何與迭代器關聯(List中iterator begin() { return (link_type)((*node).next); }的疑問)

今天在看list的時候遇到了下面同樣的問題: 在stl的List中  begin 是這樣的iterator begin() { return (link_type)((*node).next); } 我想知道 編譯器自動對於 like_t

原创 仿list的iterator

#include<iostream> using namespace std; struct _iterator{int a;_iterator(int m):a(m){} }; _iterator ad

原创 如何啓動bochs

bochs啓動的時候需要配置文件,默認的是.bochsrc,這個文件就在你安裝bochs的文件夾下面。我的是在usr/bochs/bochs-2.5.1下面。 爲什麼需要配置文件呢?因爲你需要告訴bochs,你希望的虛擬機是什麼樣子的。比

原创 如何鍛鍊寫代碼能力

最近一直在看侯捷的《STL源碼剖析》,看到第二張的空間配置器的時候,對於次級空間配置器中的obj這個結構體以及對它的運用不是很清楚,然後自己就寫了一個簡化的obj以及測試代碼。 在寫這些代碼之前,我抄寫了alloc.h中的大部分代碼和ve

原创 棧和堆 全局變量 靜態變量存放的位置

memory:stack vs  heap原文地址:http://gribblelab.org/CBootcamp/7_Memory_Stack_vs_Heap.html (待補)

原创 強制轉換

爲了體驗一下強制轉換,我寫了如下幾行程序 #include <iostream> using namespace std;   void main() { char * a = (char *) malloc(100); int * p