Search Results

Search found 36013 results on 1441 pages for 'public fields'.

Page 781/1441 | < Previous Page | 777 778 779 780 781 782 783 784 785 786 787 788  | Next Page >

  • Is there a better way to write this repetitive event-declaration code in C# when implementing an int

    - by Damien Wildfire
    I have a lot of code like the following, where I explicitly implement some events required by an interface. public class IMicrowaveNotifier { event EventHandler<EventArgs> DoorClosed; event EventHandler<EventArgs> LightbulbOn; // ... } public class Microwave : IMicrowaveNotifier { private EventHandler<EventArgs> _doorClosed; event EventHandler<EventArgs> IMicrowaveNotifier.DoorClosed { add { lock (this) _doorClosed += value; } remove { lock (this) _doorClosed -= value; } } private EventHandler<EventArgs> _lightbulbOn; event EventHandler<EventArgs> IMicrowaveNotifier.LightbulbOn { add { lock (this) _lightbulbOn += value; } remove { lock (this) _lightbulbOn -= value; } } // ... } You can see that much of this is boilerplate. In Ruby I'd be able to do something like this: class Microwave has_events :door_closed, :lightbulb_on, ... end Is there a similar shorter way of removing this boilerplate in C#? Update: I left a very important part out of my example: namely, the events getting implemented are part of an interface, and I want to implement it explicitly. Sorry for not mentioning this earlier!

    Read the article

  • Which pattern to use for logging? Dependency Injection or Service Locator?

    - by andlju
    Consider this scenario. I have some business logic that now and then will be required to write to a log. interface ILogger { void Log(string stuff); } interface IDependency { string GetInfo(); } class MyBusinessObject { private IDependency _dependency; public MyBusinessObject(IDependency dependency) { _dependency = dependency; } public string DoSomething(string input) { // Process input var info = _dependency.GetInfo(); var intermediateResult = PerformInterestingStuff(input, info); if (intermediateResult== "SomethingWeNeedToLog") { // How do I get to the ILogger-interface? } var result = PerformSomethingElse(intermediateResult); return result; } } How would you get the ILogger interface? I see two main possibilities; Pass it using Dependency Injection on the constructor. Get it via a singleton Service Locator. Which method would you prefer, and why? Or is there an even better pattern? Update: Note that I don't need to log ALL method calls. I only want to log a few (rare) events that may or may not occur within my method.

    Read the article

  • Can I control object creation using MEF?

    - by Akash
    I need to add some extension points to our existing code, and I've been looking at MEF as a possible solution. We have an IRandomNumberGenerator interface, with a default implementation (ConcreteRNG) that we would like to be swappable. This sounds like an ideal scenario for MEF, but I've been having problems with the way we instantiate the random number generators. Our current code looks like: public class Consumer { private List<IRandomNumberGenerator> generators; private List<double> seeds; public Consumer() { generators = new List<IRandomNumberGenerator>(); seeds = new List<double>(new[] {1.0, 2.0, 3.0}); foreach(var seed in seeds) { generators.Add(new ConcreteRNG(seed); } } } In other words, the consumer is responsible for instantiating the RNGs it needs, including providing the seed that each instance requires. What I'd like to do is to have the concrete RNG implementation discovered and instantiated by MEF (using the DirectoryCatalog). I'm not sure how to achieve this. I could expose a Generators property and mark it as an [Import], but how do I provide the required seeds? Is there some other approach I am missing?

    Read the article

  • JDO architecture: One to many relationship and cascading deleting

    - by user361897
    I’m new to object oriented database designs and I’m trying to understand how I should be structuring my classes in JDO for google app engine, particularly one to many relationships. Let’s say I’m building a structure for a department store where there are many departments, and each department has many products. So I’d want to have a class called Department, with a variable that is a list of a Product class. @PersistenceCapable public class Department { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) private String deptID; @Persistent private String departmentName; @Persistent private List<Product>; } @PersistenceCapable public class Product { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) private String productID; @Persistent private String productName; } But one Product can be in more than one Department (like a battery could be in electronics and household supplies). So the next question is, how do I not duplicate data in the OOD world and have only one copy of product data in numerous departments? And the next question is, let’s say I delete out a particular product, how do each of the departments know it was deleted?

    Read the article

  • ADO.NET Data Services Media type requires a ';' character before a parameter definition.

    - by idahosaedokpayi
    I am experimenting with ADO.NET and I am seeing this error on the second attempt to browse the service: <?xml version="1.0" encoding="utf-8" standalone="yes" ?> <error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata"> <code /> <message xml:lang="en-US">Media type requires a ';' character before a parameter definition.</message> </error> The first attempt is normal. I am working with an exactly identical service on an internal development network and it is fine. I am including my connection string: <add name="J4Entities" connectionString="metadata=res://*;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=MNSTSQL01N;Initial Catalog=J4;Integrated Security=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient"/> and my Data service class: using System; using System.Data.Services; using System.Collections.Generic; using System.Linq; using System.ServiceModel.Web; public class Data : DataService< J4Model.J4Entities > { // This method is called only once to initialize service-wide policies. public static void InitializeService(IDataServiceConfiguration config) { // TODO: set rules to indicate which entity sets and service operations are visible, updatable, etc. // Examples: config.SetEntitySetAccessRule("*", EntitySetRights.AllRead); // config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All); } } Is there something obvious I am not doing?

    Read the article

  • java array pass by reference does not work?

    - by stdnoit
    guys i thought almost all language including java pass array into function as reference (modifiable) but somehow it does not work here. and the testArray is still 1,2,3 with size of 3 strange enough, when if i change result[i] = 2 to a[1] =2; it work . it did pass by reference what is wrong with this code? at the end, i had a = result; (which update the a). did result get removed from stack. that is why a still get to the original a ? i am confused. thanks class Test { public static void main(String[] args) { int[] testArray = {1,2,3}; equalize(testArray, 6); System.out.println("test Array size :" + testArray.length); for(int i = 0; i < testArray.length; i++) System.out.println(testArray[i]); } public static void equalize(int[] a, int biggerSize) { if(a.length > biggerSize) throw new Error("Array size bigger than biggerSize"); int[] result = new int[biggerSize]; // System.arraycopy(a, 0, result, 0, a.length); // int array default value should be 0 for(int i = 0; i < biggerSize; i++) result[i] = 2; a = result; } }

    Read the article

  • MemoryStream instance timing help

    - by rod
    Hi All, Is it ok to instance a MemoryStream at the top of my method, do a bunch of stuff to it, and then use it? For instance: public static byte[] TestCode() { MemoryStream m = new MemoryStream(); ... ... whole bunch of stuff in between ... ... //finally using(m) { return m.ToArray(); } } Updated code public static byte[] GetSamplePDF() { using (MemoryStream m = new MemoryStream()) { Document document = new Document(); PdfWriter.GetInstance(document, m); document.Open(); PopulateTheDocument(document); document.Close(); return m.ToArray(); } } private static void PopulateTheDocument(Document document) { Table aTable = new Table(2, 2); aTable.AddCell("0.0"); aTable.AddCell("0.1"); aTable.AddCell("1.0"); aTable.AddCell("1.1"); document.Add(aTable); for (int i = 0; i < 20; i++) { document.Add(new Phrase("Hello World, Hello Sun, Hello Moon, Hello Stars, Hello Sea, Hello Land, Hello People. ")); } } My point was to try to reuse building the byte code. In other words, build up any kind of document and then send it to TestCode() method.

    Read the article

  • Why isn't our c# graphics code working any more?

    - by Jared
    Here's the situation: We have some generic graphics code that we use for one of our projects. After doing some clean-up of the code, it seems like something isn't working anymore (The graphics output looks completely wrong). I ran a diff against the last version of the code that gave the correct output, and it looks like we changed one of our functions as follows: static public Rectangle FitRectangleOld(Rectangle rect, Size targetSize) { if (rect.Width <= 0 || rect.Height <= 0) { rect.Width = targetSize.Width; rect.Height = targetSize.Height; } else if (targetSize.Width * rect.Height > rect.Width * targetSize.Height) { rect.Width = rect.Width * targetSize.Height / rect.Height; rect.Height = targetSize.Height; } else { rect.Height = rect.Height * targetSize.Width / rect.Width; rect.Width = targetSize.Width; } return rect; } to static public Rectangle FitRectangle(Rectangle rect, Size targetSize) { if (rect.Width <= 0 || rect.Height <= 0) { rect.Width = targetSize.Width; rect.Height = targetSize.Height; } else if (targetSize.Width * rect.Height > rect.Width * targetSize.Height) { rect.Width *= targetSize.Height / rect.Height; rect.Height = targetSize.Height; } else { rect.Height *= targetSize.Width / rect.Width; rect.Width = targetSize.Width; } return rect; } All of our unit tests are all passing, and nothing in the code has changed except for some syntactic shortcuts. But like I said, the output is wrong. We'll probably just revert back to the old code, but I'm curious if anyone has any idea what's going on here. Thanks.

    Read the article

  • Why do you have to call URLConnection#getInputStream to be able to write out to URLConnection#getOutputStream?

    - by John
    I'm trying to write out to URLConnection#getOutputStream, however, no data is actually sent until I call URLConnection#getInputStream. Even if I set URLConnnection#doInput to false, it still will not send. Does anyone know why this is? There's nothing in the API documentation that describes this. Java API Documentation on URLConnection: http://download.oracle.com/javase/6/docs/api/java/net/URLConnection.html Java's Tutorial on Reading from and Writing to a URLConnection: http://download.oracle.com/javase/tutorial/networking/urls/readingWriting.html import java.io.IOException; import java.io.OutputStreamWriter; import java.net.URL; import java.net.URLConnection; public class UrlConnectionTest { private static final String TEST_URL = "http://localhost:3000/test/hitme"; public static void main(String[] args) throws IOException { URLConnection urlCon = null; URL url = null; OutputStreamWriter osw = null; try { url = new URL(TEST_URL); urlCon = url.openConnection(); urlCon.setDoOutput(true); urlCon.setRequestProperty("Content-Type", "text/plain"); //////////////////////////////////////// // SETTING THIS TO FALSE DOES NOTHING // //////////////////////////////////////// // urlCon.setDoInput(false); osw = new OutputStreamWriter(urlCon.getOutputStream()); osw.write("HELLO WORLD"); osw.flush(); ///////////////////////////////////////////////// // MUST CALL THIS OTHERWISE WILL NOT WRITE OUT // ///////////////////////////////////////////////// urlCon.getInputStream(); ///////////////////////////////////////////////////////////////////////////////////////////////////////// // If getInputStream is called while doInput=false, the following exception is thrown: // // java.net.ProtocolException: Cannot read from URLConnection if doInput=false (call setDoInput(true)) // ///////////////////////////////////////////////////////////////////////////////////////////////////////// } catch (Exception e) { e.printStackTrace(); } finally { if (osw != null) { osw.close(); } } } }

    Read the article

  • Signed_request lost in ASP.NET session, confusing my website

    - by Csabi
    I have an ASP.NET MVC 3 website which is available both from a specific public url, and I'm also making be available as a Facebook App. Inside my website logic, in some places I have to determine whether the current request is from the Facebook-app, or from the public website, because I want to display content based on this environment. So, for eg. if the user is using my site as a facebook-app, then I want to display a picture, and if the user is using my site normally, then I don't wanna display a picture. To determine whether I'm from a Facebook app, I check the "signed_request" in the HttpContext.Request, and store it in the HttpSession to be available for my other actions, not just for that action (url) which is defined for my Facebook app. So when a child-action is executed, I can determine based on the Session, that the website is used as a FB-app or not. The problem happens, when the Session times out, because then althought the logic is still running inside Facebook, my logic thinks it's not inside Facebook. Any advice?

    Read the article

  • C++ MFC server app with sockets crashes and I cannot find the fault, help!

    - by usermeister
    My program has one dialog and two sockets. Both sockets are derived from CAsyncSocket, one is for listening, other is for receiving data from client. My program crashes when client tries to connect to server application and server needs to initialize receiving socket. This is my MFC dialog class. class CFileTransferServerDlg : public CDialog { ... ListeningSocket ListenSock; ReceivingSocket* RecvSock; void OnAccept(); // called when ListenSock gets connection attempt ... }; This is my derived socket class for receiving data that calls parent dialogs method when event is signaled. class ReceivingSocket : public CAsyncSocket { CFileTransferServerDlg* m_pDlg; // for accessing parent dialogs controls virtual void OnReceive(int nErrorCode); } ReceivingSocket::ReceivingSocket() { } This is dialogs function that handles incoming connection attempt when listening socket gets event notification. This is where the crash happens. void CFileTransferServerDlg::OnAccept() { RecvSock = new ReceivingSocket; /* CRASH */ } OR void CFileTransferServerDlg::OnAccept() { ReceivingSocket* tmpSock = new ReceivingSocket; tmpSock->SetParentDlg(this); CString message; if( ListenSock.Accept(*tmpSock) ) /* CRASH */ { message.LoadStringW(IDS_CLIENT_CONNECTED); m_txtStatus.SetWindowTextW(message); RecvSock = tmpSock; } } My program crashes when I try to create a socket for receiving file sent from client application. OnAccept starts when Listening socket signals incoming connection attempt, but my application then crashes. I've tried running it on another computer and connection attempt was succesful. What could be wrong? Error in debug mode: Unhandled exception at 0x009c30e1 in FileTransferServer.exe: 0xC0000005: Access violation reading location 0xccccce58.

    Read the article

  • dynamic inheritance without touching classes

    - by Jasper
    I feel like the answer to this question is really simple, but I really am having trouble finding it. So here goes: Suppose you have the following classes: class Base; class Child : public Base; class Displayer { public: Displayer(Base* element); Displayer(Child* element); } Additionally, I have a Base* object which might point to either an instance of the class Base or an instance of the class Child. Now I want to create a Displayer based on the element pointed to by object, however, I want to pick the right version of the constructor. As I currently have it, this would accomplish just that (I am being a bit fuzzy with my C++ here, but I think this the clearest way) object->createDisplayer(); virtual void Base::createDisplayer() { new Displayer(this); } virtual void Child::createDisplayer() { new Displayer(this); } This works, however, there is a problem with this: Base and Child are part of the application system, while Displayer is part of the GUI system. I want to build the GUI system independently of the Application system, so that it is easy to replace the GUI. This means that Base and Child should not know about Displayer. However, I do not know how I can achieve this without letting the Application classes know about the GUI. Am I missing something very obvious or am I trying something that is not possible?

    Read the article

  • How to cancel a deeply nested process

    - by Mystere Man
    I have a class that is a "manager" sort of class. One of it's functions is to signal that the long running process of the class should shut down. It does this by setting a boolean called "IsStopping" in class. public class Foo { bool isStoping void DoWork() { while (!isStopping) { // do work... } } } Now, DoWork() was a gigantic function, and I decided to refactor it out and as part of the process broke some of it into other classes. The problem is, Some of these classes also have long running functions that need to check if isStopping is true. public class Foo { bool isStoping void DoWork() { while (!isStopping) { MoreWork mw = new MoreWork() mw.DoMoreWork() // possibly long running // do work... } } } What are my options here? I have considered passing isStopping by reference, which I don't really like because it requires there to be an outside object. I would prefer to make the additional classes as stand alone and dependancy free as possible. I have also considered making isStopping a property, and then then having it call an event that the inner classes could be subscribed to, but this seems overly complex. Another option was to create a "Process Cancelation Token" class, similar to what .net 4 Tasks use, then that token be passed to those classes. How have you handled this situation? EDIT: Also consider that MoreWork might have a EvenMoreWork object that it instantiates and calls a potentially long running method on... and so on. I guess what i'm looking for is a way to be able to signal an arbitrary number of objects down a call tree to tell them to stop what they're doing and clean up and return.

    Read the article

  • auto refresh of div in mvc3 ASP.Net not working

    - by user1493249
    ViewData.cshtml(Partial View) Date Bill Amount PayNow </tr> </thead> <tbody> @{ for (int i = @Model.bill.Count - 1; i >= 0; i--) { <tr> <td width="30%" align="center">@Model.billdate[i]</td> <td width="30%" align="center">@Model.bill[i]</td> <td width="30%" align="center"> <a class="isDone" href="#" data-tododb-itemid="@Model.bill[i]">Paynow</a> </td> </tr> } } </tbody> Index.cshtml(View) $(document).ready(function () { window.setInterval(function () { var url = '@Url.Action("SomeScreen", "Home")'; $('#dynamictabs').load(url) }, 9000); $.ajaxSetup({ cache: false }); }); @Html.Partial("ViewData") HomeController.cs(Controller) public ActionResult Index() { fieldProcessor fp= new fieldProcessor(); return View(fp); } public ActionResult ShowScreen() { return View("ViewData",fp); } Still the same is not working..

    Read the article

  • push(ing)_back objects pointers within a loop

    - by Jose Manuel Albornoz
    Consider the following: I have a class CDevices containing, amongst others, a string member class CDevice { public: CDevice(void); ~CDevice(void); // device name std::string Device_Name; etc... } and somewhere else in my code I define another class that contains a vector of pointers to CDevices class CDevice; class CServers { public: CServers(void); ~CServers(void); // Devices vector vector<CDevice*> Devices; etc... } The problem appears in the following lines in my main.c pDevice = new CDevice; pDevice->Device_Name = "de"; Devices.push_back(pDevice); pDevice->Device_Name = " revolotiunibus"; Devices.push_back(pDevice); pDevice->Device_Name = " orbium"; Devices.push_back(pDevice); pDevice->Device_Name = " coelestium"; Devices.push_back(pDevice); for(int i = 0; i < (int)Devices.size(); ++i) cout << "\nLoad name = " << Devices.at(i)->Device_Name << endl; The output I get is " coelestium" repeated four times: each time I push_back a new element into the vector all of the already existing elements take the value of the one which has just been added. I have also tried using iterators to recover each element in the vector with the same results. Could someone please tell me what's wrong here? Thankx

    Read the article

  • Getting a type for a template instantiation?

    - by ebo
    I have the following situation: I have a object of type MyClass, which has a method to cast itself to it's base class. The class includes a typedef for it's base class and a method to do the downcast. template <class T, class B> class BaseClass; template <class T> class NoAccess; template <class T> class MyClass : public BaseClass<T, NoAccess<T> > { private: typedef BaseClass<T, NoAccess<T> > base; public: base &to_base(); }; I need to pass the result of a base call to a functor Operator: template <class Y> class Operator { Operator(Y &x); }; Operator<???> op(myobject.to_base()); Is there a easy way to fill the ??? provided that I do not want to use NoAccess?

    Read the article

  • Using Generics to return a literal string or from Dictionary<string, object>

    - by Mike
    I think I outsmarted myself this time. Feel free to edit the title also I could not think of a good one. I am reading from a file and then in that file will be a string because its like an xml file. But in the file will be a literal value or a "command" to get the value from the workContainer so <Email>[email protected]</Email> or <Email>[? MyEmail ?]</Email> What I wanted to do instead of writing ifs all over the place to put it in a generic function so logic is If Container command grab from container else grab string and convert to desired type Its up to the user to ensure the file is ok and the type is correct so another example is so <Answer>3</Answer> or <Answer>[? NumberOfSales ?]</Answer> This is the procedure I started to work on public class WorkContainer:Dictionary<string, object> { public T GetKeyValue<T>(string Parameter) { if (Parameter.StartsWith("[? ")) { string key = Parameter.Replace("[? ", "").Replace(" ?]", ""); if (this.ContainsKey(key)) { return (T)this[key]; } else { // may throw error for value types return default(T); } } else { // Does not Compile if (typeof(T) is string) { return Parameter } // OR return (T)Parameter } } } The Call would be mail.To = container.GetKeyValue<string>("[email protected]"); or mail.To = container.GetKeyValue<string>("[? MyEmail ?]"); int answer = container.GetKeyValue<int>("3"); or answer = container.GetKeyValue<int>("[? NumberOfSales ?]"); But it does not compile?

    Read the article

  • when I am executing webdriver scripts from command prompt I get error "could not find or load main class

    - by Rahul Belhekar
    I want to run below java file from command prompt. whenever I am running it from command line it gives error "Error:Could not find or load main class".This is regular java code.It runs well in eclipse but gives this error in command prompt.I have set classpath till my project bin also set "path" till bin folder of jdk, this file is getting compiled but not running from command prompt.please help me to resolve my issue.Waiting for your reply thank you public class RILookBookGetTheLook extends Libraryfile { public static void main(String[] args) { //Delcaring objects //String className = this.getClass().getName(); WebDriver driver; String baseUrl; final Log LOG = LogFactory.getLog(BrowserLocator.class); CsvWriter out; try { setUp(); } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); } try { Display_ProductPage(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } try { tearDown(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } I have written methods here which I called from main method Please guys help me to solve this problem

    Read the article

  • GET is not working for firstResource Rest example

    - by Anandan
    Hi, I am newbie to rest. I am using the following code example to understand the RESTlet. http://www.restlet.org/documentation/1.1/firstResource I am using RESTClient addon to firefox for testing. When i do GET on http://localhost/rest, i get a response "ok". But when i do GET on http://localhost/items, I get an error "404 Not found" Here's the sample code: public synchronized Restlet createRoot() { Router router = new Router(getContext()); router.attach("/items", ItemsResource.class); router.attach("/items/{itemName}", ItemResource.class); Restlet restlet = new Restlet() { @Override public void handle(Request request, Response response) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append("ok"); response.setEntity(new StringRepresentation(stringBuilder .toString(), MediaType.TEXT_HTML)); } }; router.attach("/rest", restlet); return router; } ItemResource is same as provided in the link. and I use tomcat to run the servlet. Why am I getting the "Not found" error? Am i missing something here? Thanks & Regards, Anandan

    Read the article

  • Using boost::iterator_adaptor

    - by Neil G
    I wrote a sparse vector class (see #1, #2.) I would like to provide two kinds of iterators: The first set, the regular iterators, can point any element, whether set or unset. If they are read from, they return either the set value or value_type(), if they are written to, they create the element and return the lvalue reference. Thus, they are: Random Access Traversal Iterator and Readable and Writable Iterator The second set, the sparse iterators, iterate over only the set elements. Since they don't need to lazily create elements that are written to, they are: Random Access Traversal Iterator and Readable and Writable and Lvalue Iterator I also need const versions of both, which are not writable. I can fill in the blanks, but not sure how to use boost::iterator_adaptor to start out. Here's what I have so far: class iterator : public boost::iterator_adaptor< iterator // Derived , value_type* // Base , boost::use_default // Value , boost::?????? // CategoryOrTraversal > class sparse_iterator : public boost::iterator_adaptor< iterator // Derived , value_type* // Base , boost::use_default // Value , boost::random_access_traversal_tag? // CategoryOrTraversal >

    Read the article

  • C++ class derivation and superconstructor confusion

    - by LukeN
    Hey, in a tutorial C++ code, I found this particular piece of confusion: PlasmaTutorial1::PlasmaTutorial1(QObject *parent, const QVariantList &args) : Plasma::Applet(parent, args), // <- Okay, Plasma = namespace, Applet = class m_svg(this), // <- A member function of class "Applet"? m_icon("document") // <- ditto? { m_svg.setImagePath("widgets/background"); // this will get us the standard applet background, for free! setBackgroundHints(DefaultBackground); resize(200, 200); } I'm not new to object oriented programming, so class derivation and super-classes are nothing complicated, but this syntax here got me confused. The header file defines the class like this: class PlasmaTutorial1 : public Plasma::Applet { Similar to above, namespace Plasma and class Applet. But what's the public doing there? I fear that I already know the concept but don't grasp the C++ syntax/way of doing it. In this question I picked up that these are called "superconstructors", at least that's what stuck in my memory, but I don't get this to the full extend. If we glance back at the first snippet, we see Constructor::Class(...) : NS::SuperClass(...), all fine 'till here. But what are m_svg(this), m_icon("document") doing there? Is this some kind of method to make these particular functions known to the derivated class? Is this part of C++ basics or more immediate? While I'm not completly lost in C++, I feel much more at home in C :) Most of the OOP I have done so far was done in D, Ruby or Python. For example in D I would just define class MyClass : MySuperClass, override what I needed to and call the super class' constructor if I'd need to.

    Read the article

  • Reverse engineering and redistributing code from .NET Framework

    - by ToxicAvenger
    Once or twice I have been running into the following issue: Classes I want to reuse in my applications (and possibly redistribute) exist in the .NET Framework assemblies, but are marked internal or private. So it is impossible to reuse them directly. One way is to disassemble them, pick the pieces you need, put them in a different namespace, recompile (this can be some effort, but usually works quite well). My question is: Is this legal? Is this only legal for the classes of the Framework which are available as source code anyway? Is it illegal? I think that Microsoft marks them internal or private primarily so that they don't have to support them or can change the interfaces later. But some pieces - be it SharePoint or WCF - are almost impossible to properly extend by only using public classes from the apis. And rewriting everything from scratch generates a huge amount of effort, before you even start solving the problem you intended to solve. This is in my eyes not a "dirty" approach per se. The classes Microsoft ships are obviously well tested, if I reuse them under a different namespace I have "control" over them. If Microsoft changes the original implementation, my code won't be affected (some internals in WCF changed quite a bit with v4). It is not a super-clean approach. I would much prefer Microsoft making several classes public, because there are some nice classes hidden inside the framework.

    Read the article

  • How to load/save C++ class instance (using STL containers) to disk

    - by supert
    I have a C++ class representing a hierarchically organised data tree which is very large (~Gb, basically as large as I can get away with in memory). It uses an STL list to store information at each node plus iterators to other nodes. Each node has only one parent, but 0-10 children. Abstracted, it looks something like: struct node { public: node_list_iterator parent; // iterator to a single parent node double node_data_array[X]; map<int,node_list_iterator> children; // iterators to child nodes }; class strategy { private: list<node> tree; // hierarchically linked list of nodes struct some_other_data; public: void build(); // build the tree void save(); // save the tree from disk void load(); // load the tree from disk void use(); // use the tree }; I would like to implement the load() and save() to disk, and it should be fairly fast, however the obvious problems are: I don't know the size in advance; The data contains iterators, which are volatile; My ignorance of C++ is prodigious. Could anyone suggest a pure C++ solution please?

    Read the article

  • calling a function from a set of overloads depending on the dynamic type of an object

    - by Jasper
    I feel like the answer to this question is really simple, but I really am having trouble finding it. So here goes: Suppose you have the following classes: class Base; class Child : public Base; class Displayer { public: Displayer(Base* element); Displayer(Child* element); } Additionally, I have a Base* object which might point to either an instance of the class Base or an instance of the class Child. Now I want to create a Displayer based on the element pointed to by object, however, I want to pick the right version of the constructor. As I currently have it, this would accomplish just that (I am being a bit fuzzy with my C++ here, but I think this the clearest way) object->createDisplayer(); virtual void Base::createDisplayer() { new Displayer(this); } virtual void Child::createDisplayer() { new Displayer(this); } This works, however, there is a problem with this: Base and Child are part of the application system, while Displayer is part of the GUI system. I want to build the GUI system independently of the Application system, so that it is easy to replace the GUI. This means that Base and Child should not know about Displayer. However, I do not know how I can achieve this without letting the Application classes know about the GUI. Am I missing something very obvious or am I trying something that is not possible?

    Read the article

  • How to Implement an Interface that Requires Duplicate Member Names in C#?

    - by Will Marcouiller
    I often have to implement some interfaces such as IEnumerable<T> in my code. Each time, when implementing automatically, I encounter the following: public IEnumerator<T> GetEnumerator() { // Code here... } public IEnumerator GetEnumerator1() { // Code here... } Though I have to implement both GetEnumerator() methods, they impossibly can have the same name, even if we understand that they do the same, somehow. The compiler can't treat them as one being the overload of the other, because only the return type differs. When doing so, I manage to set the GetEnumerator1() accessor to private. This way, the compiler doesn't complaint about not implementing the interface member, and I simply throw a NotImplementedException within the methods body. However, I wonder whether it is a good practice, or if I shall proceed differently, as perhaps a method alias or something like so. What is the best approach while implementing an interface such as IEnumerable<T> that requires the implementation of two different methods with the same name?

    Read the article

< Previous Page | 777 778 779 780 781 782 783 784 785 786 787 788  | Next Page >