int main() { /* regular cast */ // float d=3.14159265; // int i = static_cast<int>(d); // cout << "i = " << i << endl << endl; for( int n = 0; n < 5; ++n ) { Base* base = CreateRandom(); base->DoIt(); Bar* bar = static_cast<Bar*>(base); Foo* foo = static_cast<Foo*>(base); if( bar ) bar->BarIt(); if( foo ) foo->FooIt(); delete base; base = NULL; printf("-------------STATIC_CAST-------------- \n"); } return 0; }
void FormView::AlignObjectMenu(Bar& bar) { bar.Add(t_("Top "), THISBACK(AlignTopSelection)); bar.Add(t_("Left"), THISBACK(AlignLeftSelection)); bar.Add(t_("Right"), THISBACK(AlignRightSelection)); bar.Add(t_("Bottom "), THISBACK(AlignBottomSelection)); }
void NoteEntryAction::renderKeyboardPreview(QPainter& painter, const MusicCursor& cursor) { Staff* staff = cursor.staff(); Part* part = staff->part(); Sheet* sheet = part->sheet(); Bar* bar = sheet->bar(cursor.bar()); QPointF p = bar->position() + QPointF(0, staff->top()); Voice* voice = cursor.staff()->part()->voice(cursor.voice()); VoiceBar* vb = voice->bar(bar); if (cursor.element() >= vb->elementCount()) { // cursor is past last element in bar, position of cursor is // halfway between last element and end of bar if (vb->elementCount() == 0) { // unless entire voicebar is still empty p.rx() += 15.0; } else { VoiceElement* ve = vb->element(vb->elementCount()-1); p.rx() += (ve->x() + bar->size()) / 2; } } else { // cursor is on an element, get the position of that element p.rx() += vb->element(cursor.element())->x(); } p.ry() += (cursor.staff()->lineCount() - 1)* cursor.staff()->lineSpacing(); p.ry() -= cursor.staff()->lineSpacing() * cursor.line() / 2; m_tool->shape()->renderer()->renderNote(painter, m_duration < QuarterNote ? QuarterNote : m_duration, p, 0, Qt::magenta); }
int main( int argc, char **argv ) { co::BufferCache cache( 10 ); co::LocalNodePtr node = new co::LocalNode; const uint64_t size = co::OCommand::getSize(); co::BufferPtr buffer = cache.alloc( co::Buffer::getCacheSize( )); buffer->resize( size ); reinterpret_cast< uint64_t* >( buffer->getData( ))[ 0 ] = size; co::ICommand command( node, node, buffer, false ); command.setType( co::COMMANDTYPE_NODE ); command.setCommand( co::CMD_NODE_CUSTOM ); Bar bar; FooBar fooBar; BarFoo barFoo; bar.dispatchCommand( command ); fooBar.dispatchCommand( command ); barFoo.dispatchCommand ( command ); TESTINFO( calls == 3, calls ); return EXIT_SUCCESS; }
int main(int argv, char **args) { QApplication app(argv, args); CodeEditor editor; editor.setWindowTitle(QObject::tr("Code Editor Example")); editor.show(); Window w; w.show(); Foo foo; foo.doFoo(); Blub b; b.blubber(); Bar bar; bar.doBar(); Abc abc; abc.doAbc(); Xyz xyz; xyz.doXyz(); Yaf yaf; yaf.doYaf(); LibC lc; lc.foo(); return app.exec(); }
int _tmain(int argc, _TCHAR* argv[]) { Vertex3d* pv3d = new Vertex3d; Point2d* p2d = pv3d; p2d->z(); // 子类到第二个基类的指针转换 Vertex* pv = pv3d; // virtual function的调用 pv->vfun2(); /* vptr vptr_Vertex = *((vptr*)pv); (*(vptr + 1))(pv); */ _asm { mov eax, dword ptr [pv] mov edx, dword ptr [eax] mov eax, dword ptr [edx + 4] call eax } // Bar的基类是一个没有virtual function的struct // 可看出vptr被放在了起始处 Bar* pb = new Bar; pb->fun(); Foo* pf = pb; return 0; }
void FormEdit::CreateMenuBar(Bar& bar) { bar.Add(t_("File"), THISBACK(FileBar)); bar.Add(t_("Item"), THISBACK(ItemBar)); bar.Add(t_("Form"), THISBACK(FormBar)); bar.Add(t_("View"), THISBACK(ViewBar)); }
void FuturesDialog::slotFirstRecord () { Bar record; db->getFirstBar(record); if (record.getEmptyFlag()) return; updateFields(record); }
void SelectPackageDlg::PackageMenu(Bar& menu) { bool b = GetCurrentName().GetCount(); menu.Add("New package..", THISBACK(OnNew)); menu.Separator(); menu.Add(b, "Rename package..", THISBACK(RenamePackage)); menu.Add(b, "Delete package", THISBACK(DeletePackage)); }
void testAddBar() { Bar* bar = sheet->addBar(); QCOMPARE(bar->sheet(), sheet); QCOMPARE(sheet->barCount(), 1); QCOMPARE(sheet->bar(0), bar); }
void FuturesDialog::slotNextRecord () { Bar record; db->getNextBar(currentDate, record); if (record.getEmptyFlag()) return; updateFields(record); }
void Puzzle::GameMenu(Bar& bar) { bar.Add(t_("New game"), THISBACK(New)); bar.Add(t_("Setup.."), THISBACK(Setup)); bar.Add(t_("Best scores.."), THISBACK(Scores)); bar.Separator(); bar.Add(t_("Exit"), Breaker()); }
void test3() { using namespace AM3359::CONTROL; Bar bar; Printf(Con,"#;\n",bar.get_Conf_GPMC_A9()); }
void StocksDialog::slotPrevRecord () { Bar record; db->getPrevBar(currentDate, record); if (record.getEmptyFlag()) return; updateFields(record); }
void StocksDialog::slotDateSearch (QDateTime dt) { Bar record; db->getSearchBar(dt, record); if (record.getEmptyFlag()) return; updateFields(record); }
void StocksDialog::slotLastRecord () { Bar record; db->getLastBar(record); if (record.getEmptyFlag()) return; updateFields(record); }
void LayoutDesigner::MainBar(Bar& bar) { bar.Add("File", THISBACK(FileBar)); bar.Add("Edit", THISBACK(EditBar)); bar.Add("Layout", THISBACK(LayoutBar)); bar.Add("Language", THISBACK(LangBar)); bar.Add("Item", THISBACK(ItemBar)); bar.Add("Options", THISBACK(OptionsBar)); }
int main() { // Foo foo = anotherWay(); // foo's pointer now points to something on the stack that is not there any more. // foo.print(); // Bar bar = anotherBar(); Bar bar = Bar("Hundeprute"); bar.print(); }
void App::SetupMenu(Bar& menu) { menu.Add(AK_ENGLISH, [=] { SetLang(LNGC_('E','N','U','S', CHARSET_UTF8)); }) .Radio(GetCurrentLanguage() == LNGC_('E','N','U','S', CHARSET_UTF8)); menu.Add(AK_CZECH, [=] { SetLang(LNGC_('C','S','C','Z', CHARSET_UTF8)); }) .Radio(GetCurrentLanguage() == LNGC_('C','S','C','Z', CHARSET_UTF8)); menu.Separator(); menu.Add(AK_KEYS, [=] { EditKeys(); }); }
void FormEdit::FormBar(Bar& bar) { bar.Add(t_("Change form settings..."), FormViewImg::LayoutProperties(), THISBACK(OpenLayoutProperties)) .Enable(_View.IsLayout()) .Tip(t_("Change form settings...")); bar.Add(t_("Preview"), FormViewImg::Layout(), THISBACK(TestLayout)) .Enable(_View.IsLayout()) .Tip(t_("Preview")); }
void StyleManager::Menu(Bar& bar) { bar.Add(t_("Create new style.."), THISBACK(Create)) .Key(K_INSERT); bar.Add(t_("Remove style"), THISBACK(Remove)) .Key(K_DELETE); bar.Add(t_("Rename.."), callback(&list, &ArrayCtrl::DoEdit)) .Key(K_CTRL_ENTER); }
void IdeIconDes::EditMenu(Bar& bar) { EditBar(bar); ToolEx(bar); bar.Add(IsSingleMode() ? "PNG" : "List", THISBACK(ListMenu)); bar.Add("Selection", THISBACK(SelectBar)); bar.Add("Image", THISBACK(ImageBar)); bar.Add("Draw", THISBACK(DrawBar)); bar.Add("Settings", THISBACK(SettingBar)); }
int main() { Foo foo; Bar bar; foo.registerFnPointer(); bar.registerFnPointer(); ControllerClass::function_vector[0](); ControllerClass::function_vector[1](); }
void LayoutDesigner::OptionsBar(Bar& bar) { bar.Add("Alias map", THISBACK(SetupAlias)); bar.Add("Use grid", TB_GRID(), THISBACK(ToggleGrid)) .Check(usegrid); bar.Add("Grid settings..", THISBACK(SetupGrid)); bar.Add("Ignore min size", THISBACK(ToggleIgnoreMin)) .Check(ignoremin); bar.Add("QLIB2 output", THISBACK(ToggleQLIB2Output)) .Check(qlib2_output); }
int main() { std::cout << "Testing..." << std::endl; Bar b; b.altSetX(4); std::cout << b.getX() << std::endl; return 0; }
void Ide::BuildPackageMenu(Bar& menu) { int pi = GetPackageIndex(); bool b = !IdeIsDebugLock() && idestate == EDITING && pi >= 0 && pi < IdeWorkspace().GetCount(); menu.Add(b, AK_BUILDPACKAGE, THISBACK(PackageBuild)) .Help("Build current package"); menu.Add(b, AK_CLEANPACKAGE, THISBACK(PackageClean)) .Help("Remove all intermediate files of the current package"); menu.MenuSeparator(); }
void Ide::SetupMobilePlatforms(Bar& menu) { AndroidSDK androidSDK(androidSDKPath); if(androidSDK.Validate()) { menu.Separator(); menu.Add("Android", THISBACK1(SetupAndroidMobilePlatform, androidSDK)); } }
// bar list context menu void XMLBarsEditor::barContextCb(Bar &bar) { // get current selection bar.Add(t_("Add new bar"), THISBACK(barContextAddCb)); int i = barListPane.barList.GetCursor(); if(i < 0) return; String barName = barListPane.barList.Get(i); bar.Add(Format(t_("Remove bar '%s'"), barName), THISBACK(barContextRemoveCb)); }
void DbPlugin::getHistory (BarData *barData, QDateTime &startDate) { switch (type) { case Index1: getIndexHistory(barData, startDate); barData->createDateList(); return; break; case Spread1: getSpreadHistory(barData, startDate); barData->createDateList(); return; break; case CC1: getCCHistory(barData, startDate); barData->createDateList(); return; break; default: break; } DBT key, data; DBC *cur; memset(&key, 0, sizeof(DBT)); memset(&data, 0, sizeof(DBT)); DBBar dbbar; memset(&dbbar, 0, sizeof(DBBar)); data.data = &dbbar; data.ulen = sizeof(DBBar); data.flags = DB_DBT_USERMEM; db->cursor(db, NULL, &cur, 0); QString s = startDate.toString("yyyyMMddhhmmss"); key.data = (char *) s.latin1(); key.size = s.length() + 1; cur->c_get(cur, &key, &data, DB_SET_RANGE); while (! cur->c_get(cur, &key, &data, DB_PREV)) { if (barData->count() >= barRange) break; Bar bar; s = (char *) key.data; getBar(dbbar, s, bar); bar.setTickFlag(barData->getBarType()); barData->prepend(bar); } cur->c_close(cur); barData->createDateList(); }
int main () { Bar b; b.f ();// { dg-error "no matching" } b.f (10); }