के वैक्टरों के वेक्टर को शुरू करने में समस्याएं मैं उन कोशिकाओं के साथ एक वर्गबद्ध ग्रिड उत्पन्न करने की कोशिश कर रहा हूं जिसमें आरोही संख्या है।ऑटो-इंक प्रकार
1 1 1
2 2 2
3 3 3
जो मेरी अपेक्षा से अलग है::
1 2 3
4 5 6
7 8 9
क्या मैं गलत कर रहा हूँ
#include <iostream>
#include <vector>
class Simple
{
public:
Simple(): id(genId()) {}
static int genId()
{
static int g_id = 0;
return ++g_id;
}
int id;
};
typedef std::vector< std::vector<Simple> > SimpleGrid;
void printSimpleGrid(SimpleGrid& grid)
{
for(int i = 0; i < grid.size(); i++) {
for(int j = 0; j < grid[i].size(); j++) {
std::cout << grid[i][j].id << " ";
}
std::cout << std::endl;
}
}
int main()
{
int dim = 3;
SimpleGrid test(dim);
for (int i=0; i<dim; i++) {
std::vector<Simple> row(dim);
test[i] = row;
}
printSimpleGrid(test);
return 0;
}
मैं इस आउटपुट प्राप्त?
(मैं कोड :: ब्लाकों उपयोग कर रहा हूँ 12.11 राजस्व 8629 SDK संस्करण 1.13.14 के साथ)
आप इस बारे में सुनिश्चित कर रहे हैं: कोड :: ब्लाकों 12.11 पैकेज स्पष्ट रूप से न केवल एक मानक का समर्थन करता है? क्योंकि मुझे सही परिणाम मिल रहे हैं http://coliru.stacked-crooked.com/a/ba4517515949b7db – 101010
@ 40two हां, मैंने बस इसे कॉपी-पेस्ट किया है। शायद यह मेरे एसडीके संस्करण में केवल एक बग है। ... कोलिरु रिमाइंडर के लिए धन्यवाद :) – Wolf
शायद क्योंकि मुझे वीसी ++ 2013 के साथ भी सही परिणाम मिल रहे हैं। – 101010